-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
FSRS: ignore initial reviews until first longer break #3734
base: main
Are you sure you want to change the base?
Conversation
In my opinion, we should strictly avoid adding more options to deck options. Instead, is there a way you can do this via custom scheduling like this one: https://kuroahna.github.io/anki_srs_kai/index.html There is already too many options and I worry many users find this too complicated. What do you think? |
This one could comfortably be hidden in the advanced options, since it's for a pretty specific case. |
Agreed. We need to move in the direction of simplifying and streamlining FSRS, not making it even more complicated (it's already way above the complexity level that an average person can comfortably deal with). |
Sorry, but I think, that this is a very bad idea: many users have their own style of reviewing. Also, a lot of people in Anki community (and even docs, I believe) recommend to use It is absolutely, no-good decision to cut initial reviews on some arbitrary duration. I strongly believe, that FSRS handles always My suggestion for your case is to manually tweak FSRS weights (particularly, the |
That's what I've been doing so far, but it's not working out. Cause that's another issue. Right now I have to set the Optimizer to ignore nearly the first 8 months or so of the deck, cause it goes completely bonkers if it sees the inconsistent reviews there. |
Have you tried optimising on the beta? Recency weighting may help with your issue. |
All the parameter-examples above are from latest main, which right now is identical with the 25.01 beta. From how I understand it, the recency-weighting does not affect the initial stability whatsoever, the very first rating still gets special treatment. |
If you've only just recently changed your reviewing habit (i.e using Again instead of Good for new cards), you might be better off ignoring reviews before that date
Is 1.1.2024 when you changed your reviewing habit or an arbitrary date that still includes faulty reviews?
But your reviews for those cards are faulty as you've said. And with this change you're assuming that everyone's initial reviews are faulty as well. |
I don't think that this change should be implemented in Anki for the same reasons that have been mentioned by others above.
For solving your case, there are three options:
By the way, I don't think that pressing Good as the initial rating on some cards would cause them to have such high initial stability just because most of the other ratings are You can get a summary of how well you recall a newly introduced card for different first ratings from the Python optimizer. It generates a file called something like S0_dataset.tsv |
I'm dealing with a deck where I practically don't know any of the new cards that show up (It's a Kanji-Learning-Deck).
So that results in practically all first ratings to be "Again", which results in relatively poor performance of FSRS for that deck for me.
It consistently thinks I'm much better than I actually am, resulting in lower retention than the configured desired value.
I also initially did some mistakes in my learning process(while still using SM2), and hit "Good" as initial rating on cards I learned on the Sibling Card minutes prior, which should actually have been "Again".
I have however consistently had a 3h learning step, so I got the idea that this patch implements:
Ignore all ratings until after that first 3h break. That way FSRS won't see just a wall of Again (and my faulty early Good-Reviews), but actually a pretty well balanced mix, with Good being the by far most common, but also quite a few Hard and some Again ratings.
Here's the resulting parameters of optimizing that deck, once with a cutoff of 1.1.2024, and once the full collection with all the broken early reviews:
As demonstrated by the initial stabilities, this has pretty much solved the issue of a way too high stability for Cards initially rated "Good", which mostly affects ~1000 cards from my early reviews.
But even without such a mistake in a lot of review histories, I think this approach is worthwhile.
Specially when learning completely new material via a deck, all initial ratings will be Again. The first rating after the first break will almost certainly be more varied.
Obviously the code is not ready like this. It at the very least needs to be configurable via an option. Just looking for opinions here.
I also found no obvious way how to access the deck setting from that place. Looks like it'll have to be passed on as a parameter for quite a while.